package simpletrace

import (
	"context"
)

type Exporter interface {
	Export(ctx context.Context, span *Span) error
	Start(ctx context.Context)
	Close()
}

type Logger interface {
	InfoCtx(ctx context.Context, format string, args ...any)
	WarnCtx(ctx context.Context, format string, args ...any)
	ErrorCtx(ctx context.Context, format string, args ...any)
	Info(format string, args ...any)
	Warn(format string, args ...any)
	Error(format string, args ...any)
}

var logger Logger

func SetLogger(l Logger) {
	logger = l
}
